package gq.example.mapper;

import gq.example.dto.UpdateUserAndRoleDto;
import gq.example.entity.Permission;
import gq.example.entity.Users;

import java.util.List;

public interface UsersMapper {

    // 根据用户id查找用户
    Users findUserByUserId(Integer id);

    // 根据用户名模糊查找用户
    List<Users> findUsersByUsername(Users users);

    // 添加用户
    int addUser(Users user);

    // 根据id修改用户
    int updateUser(Users users);

    // 根据用户名姓名查询用户
    Users findUserByUsername(String username);

    // 根据邮箱查找用户
    Users findUserByEmail(String email);

    // 删除用户
    int deleteUser(Integer id);

    // 判断用户名是否已经存在
    Users userExist(String username,String email);

    // 根据用户姓名查询用户权限
    List<Permission> findPermissionByUsername(String username);

    // 获取部门领导邮箱
    List<String> getEmails(Integer id);

    // 根据用户id获取用户名
    String getNameById(Integer id);

    int forgetPassword(Users user);

}
